#ifndef QPROPERTYMANAGER_H
#define QPROPERTYMANAGER_H


#include <QObject>
#include <QTimer>
#include <QList>

namespace SHAREDLIB
{
    class QAbstractProperty;

    class QPropertyManager : public QObject
    {
        Q_OBJECT
    public:
        static QPropertyManager* getPropertyManager();
        static void              releasePropertyManager();


        void    addProperty(QAbstractProperty* property);
    protected:
        explicit QPropertyManager(QObject *parent = 0);

    signals:

    protected slots:
        void    checkProperty();
        void    propertyDestory();
    protected:
        static QPropertyManager    *m_manager;

        QTimer                     *m_timer;
        QList<QAbstractProperty*>    m_propertys;
    };
}

#endif // QPROPERTYMANAGER_H
